package com.tanhua.server.exception;


import com.tanhua.domain.vo.ErrorResult;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;


/**
 * spring全局异常实现，有2钟方式：
 * 1、通过实现ExceptionHandler接口，用把该异常类加入容器（@Compoment）
 * 2、通过 @ControllerAdvice 全局异常的注解
 */
@ControllerAdvice
public class ExceptionAdvice {

    /**
     *  @ExceptionHandler :
     *      value : 指定当前异常处理器处理的异常类型
     */
    @ExceptionHandler(value=Exception.class)
    @ResponseBody
    public ErrorResult handlerException(Exception e) {
        e.printStackTrace();
        return ErrorResult.error();
    }
}